The rotator is a form of buffered space switch in which connections between a set of sources and destinations are made though a set of tandems each containing buffer memory, the tandems are connected in rotation to each source, and in rotation to each destination. In the most basic form of the rotator, there are equal numbers of source, destination and tandem nodes, and rotation of connections is achieved by means of a space switch between the tandem and source and between the tandem and destination nodes. The bandwidth of each interconnecting link used to form a commutated paths through the space switch, is made equal to or with dilation made greater than the input rate of each source or equally the output rate of any destination.
In the rotator described in prior art which will be referred to as the original rotator, during each phase of the cycle, K information units (IU)-are transferred from the tandem to each destination, and K IUs are transferred from each source to each tandem. The basis of operation ensured by the scheduling or collision avoidance matching process is that at any time the tandem can be assigned a maximum of only K IUs for any given destination. For the purposes of this document and without loss of generality of the enhancements, the value of K will be set to one information unit for both the original rotator and the enhanced rotator. The number of sources, destinations, and tandems are represented by s, d, and t, respectively. Thus in general for K=1 for the original rotator, the tandem will have s=d IU storage locations, which are read out in the sequence shown in the table.
Source 0 Source 1 Source 2 Source 3 connects to connects to connects to connects to Cycle Phase tandem # tandem # tandem # tandem # 0 0 0 3 2 1 0 1 1 0 3 2 0 2 2 1 0 3 0 3 3 2 1 0 1 0 0 3 2 1 1 1 1 0 3 2 1 2 2 1 0 3 1 3 3 2 1 0
Since all tandems visit all destinations, in the simplest matching process, any source may place an IU on any tandem not already having an IU for that destination. In implementation this means that the address in the RAM to which an IU placed is equivalent to the destination identity and this may be passed to tandem as a parameter with, or in advance of the IU requiring a label of length log.sub.2 (d) bits. The addressing of read out for transfer to the destination simply follow the connection sequence and may employ a simple modulo d counter incremented at every phase of the rotation.
If one tandem is considered in isolation it can be seen that in s=d=t phases it provides each destination with one IU and that this IU can come from any one of the s sources. For any given rotation, sources are mutually exclusive (i.e., two IUs cannot come from the same source and go to different destinations in the simple original rotator). Thus, viewed independently, each tandem provides connectivity directly equivalent to that of a space switch except that the connection between the sources and destinations is spread out (sheared) in time over the period of one rotation (*note 1). Given there are s tandems and s phases per rotation, instead of being equivalent to one re-configuration of a an s by s space switch per rotation, the total effect is equivalent to one reconfiguration of an s by s space switch per phase, one phase step being the time it takes to transfer one IU.
*Note 1: There is one other constraint in terms of the original rotator, this is that each decision on allocation to a tandem is dependent on the previous 3 allocation decisions, a constraint in the form of a moving window.